import random
import datetime
    # 1．创建一个类：DoubleBall。
class DoubleBall(object):
    # 2．添加静态方法：howToPlay。
    @staticmethod
    def howToPlay():
        print('''显示双色球的基本玩法
     						双色球投注区分为红色球号码区和蓝色球号码区
    						红色球号码区由1-33共三十三个号码组成
     						蓝色球号码区由1-16共十六个号码组成''')
    # 				参数：无
    # 				返回值：无
    # 				功能描述：
    # 					显示双色球的基本玩法
    # 						双色球投注区分为红色球号码区和蓝色球号码区
    # 						红色球号码区由1-33共三十三个号码组成
    # 						蓝色球号码区由1-16共十六个号码组成
    #     bballs=[i for i in range(1,17)]
    #     list_bballs=[]
    #     bball=random.choice(bballs)
    #     list_bballs.append(bball)
    # 3．		添加构造方法
    def __init__(self,tname):
    # 				参数：
    # 					tname
    # 				对象属性：
    # 					红球列表，rlist，空列表。
        self.rlist=[]
    # 					蓝球列表，blist，空列表。
        self.blist = []
    # 					投注数：bet，保存整型数据。
        self.bet=1
    # 					Name,保存对象的姓名
        self.Name=tname
        Year=random.randint(1970,2020)
        month=random.randint(1,12)
        day=random.randint(1,30)
        shijian=datetime.date(year=Year,month=month,day=day)
        shijian1=shijian.strftime("%Y-%m-%d")
        self.birth=shijian1
    # 					birth,随机生成一个生日（年-月-日）
    # 				返回值：无
    # 				功能描述：
    # 					初始化对象属性
    # 4．		添加打印方法
    def __str__(self):
        print("显示用户信息：{}，红球列表{}，当前日期和时间{}".format(self.Name,self.rlist,self.birth))
    # 				参数：无
    # 				返回值：无
    # 				功能描述：
    # 					显示用户信息：name，红球列表 ，当前日期和时间
    # 					提示，使用datetime模块
    # 5．		添加对象方法，genRedBall
    def genRedBall(self):
        rballs = [i for i in range(1, 34)]
        rlist = []
        n = 1
        while True:
            rball = random.choice(rballs)
            if rball in rlist:
                continue
            else:
                rlist.append(rball)

                n += 1
                if n > 6:
                    break
    # 				参数：无
    # 				返回值：无
    # 				功能描述：
    # 					随机产生6个红球号码，
    # 					红球号码范围1~33
    # 					红球号码不能重复
    # 					红球号码保存到对象属性rlist中
    # 6．	创建DoubleBall对象mdb，完成如下任务。
if __name__ == '__main__':
    mdb=DoubleBall("王麻子")
    mdb.howToPlay()
    mdb.genRedBall()
    mdb.__str__()

    # 				调用静态方法。
    # 				调用对象方法，显示机选红球，(提示：使用打印方法)
    # （二）评分标准（共100分，各5分）
    #
    # 1．类创建正确
    # 2．创建子类正确
    # 3．子类继承正确
    # 4．子类重写父类方法正确
    # 5．普通方法实现正确
    # 6．对象创建正确
    # 7．对象初始化正确
    # 8．对象方法调用正确
    # 9．对象方法从传递参数正确
    # 10．数据显示使用了格式化
    # 11．格式化输出正确
    # 12．使用方法正确
    # 13．代码规范
    # 14．运行无误
    # 15．有注释
    # 16．格式正确
    # 17．输出准确
    # 18．类中代码缩进正确
    # 19．类外代码使用正确
    # 20．输出准确
